from django.db import models

# Create your models here.
from django.db import models
from blueapps.account.models import User


class WeChatUser(models.Model):
    # 定义一个外键，关联User模型，级联删除
    user = models.OneToOneField(User, models.CASCADE)
    # 定义一个邮箱字段，唯一，可以为空
    email = models.EmailField(unique=True, null=True)
    # 定义一个座右铭字段，最大长度为100，可以为空，可以为空
    motto = models.CharField(max_length=100, null=True, blank=True)
    # 定义一个头像字段，最大长度为50，可以为空，可以为空
    pic = models.CharField(max_length=50, null=True, blank=True)
    # 定义一个地区字段，最大长度为50，可以为空，可以为空
    region = models.CharField(max_length=50, null=True, blank=True)

# 定义一个__str__方法，用于返回self.user.username
    def __str__(self):
        return self.user.username


class Status(models.Model):
    # 定义一个外键，关联WeChatUser模型，当WeChatUser模型被删除时，Status模型也会被删除
    user = models.ForeignKey(WeChatUser, models.CASCADE)
    # 定义一个字符型字段，最大长度为280
    text = models.CharField(max_length=280)
    # 定义一个字符型字段，最大长度为100，可以为空
    pics = models.CharField(max_length=100, null=True, blank=True)
    # 定义一个日期时间型字段，自动添加当前时间
    pub_time = models.DateTimeField(auto_now_add=True)

    # 返回Status模型的字符串表示
    def __str__(self):
        return self.text

    # 定义Meta类，设置排序方式为按照id降序排列
    class Meta:
        ordering = ['-id']
